<?php
/**
 * @package   auto_occasion
 * @subpackage 
 * @author    CMS
 * @copyright 2011
 * @license    All rights reserved
 */



class techniqueSrv {

    /**
     * Fonction permettant de sauvegarder les ajouterCaracteristiqueVersion
     * @return param object $datas
     * @return id id créé
     *
     */
    public function ajouterCaracteristiqueVersion ($datas) {
        // instanciation de la factory
        $maFactory = jDao::get("commun~ao_essais_caracteristique_version");
        $records   = jDao::createRecord("commun~ao_essais_caracteristique_version");

        $records->id_version         = $datas->id_version;
        $records->id_caracteristique = $datas->id_caracteristique;
        $records->id_essai           = $datas->id_essai;
        $records->description        = $datas->description;
        
        
        if ($maFactory->insert($records)) {
            return $records->id;
        }

    }
    /**
     * Fonction permettant de sauvegarder les ajouterCaracteristiqueVersion
     * @return param object $datas
     * @return id id créé
     *
     */
    public function modifierCaracteristiqueVersion ($datas) {
        // instanciation de la factory
        $maFactory = jDao::get("commun~ao_essais_caracteristique_version");
        $records   = $maFactory->get($datas->id);

        $records->id_version         = $datas->id_version;
        $records->id_caracteristique = $datas->id_caracteristique;
        $records->id_essai           = $datas->id_essai;
        $records->description        = $datas->description;
        
        
        if ($maFactory->update($records)) {
            return $records->id;
        }

    }
     /**
     * Fonction permettant de vérifier si les versions et caractériqtique et essai sont dejà en base et retouren id si oui
     * @return param object $datas
     * @return id id créé
     *
     */
    public function check ($datas) {
        // instanciation de la factory
        $sql  = "SELECT id FROM ao_essais_caracteristique_version ";
        $sql .= " WHERE id_version = ".$datas->id_version;
        $sql .= " AND id_caracteristique = ".$datas->id_caracteristique;
        $sql .= " AND id_essai = ".$datas->id_essai;
        $sql .= " LIMIT 1";

        $jdb = jDb::getDbWidget();
         $res =  $jdb->fetchAll($sql);
         return (isset($res[0]->id))? $res[0]->id : 0;

    }
    /**
     * Fonction permettant de sauvegarder les caracteristiques
     * @return param int $essaiId
     * @return param string $caracteristique
     * @return id id créé
     *
     */
    public function ajouterCaracteristique ($essaiId, $caracteristique) {
        // instanciation de la factory
        $maFactory = jDao::get("commun~ao_essais_caracteristique");
        $records   = jDao::createRecord("commun~ao_essais_caracteristique");

        $records->caracter_essai_id = $essaiId;
        $records->caracter_name		= $caracteristique;
        
        
        if ($maFactory->insert($records)) {
            return $records->caracter_id;
        }

    }
    /**
     * Fonction permettant de sauvegarder les versions
     * @return param int $essaiId
     * @return param string $version
     * @return id id créé
     *
     */
    public function ajouterVersion ($essaiId, $version) {
        // instanciation de la factory
        $maFactory = jDao::get("commun~ao_essais_version");
        $records   = jDao::createRecord("commun~ao_essais_version");

        $records->version_essai_id = $essaiId;
        $records->version_name		= $version;
        
        
        if ($maFactory->insert($records)) {
            return $records->version_id;
        }

    }

     /**
     * Fonction permettant de récupérer le tableau récap des techniques
     * @param int $essaiId
     * @return object
     *
     */
    public function getAllByEssaiId ($essaiId) {
        // instanciation de la factory
        $maFactory = jDao::get("commun~ao_essais_caracteristique_version");
        
        return $maFactory->getAllByEssaiId($essaiId)->fetchAll();

    }

     /**
     * Fonction permettant de savoir si une technique est liée à un essai
     * @param int $essaiId
     * @return boolean
     *
     */
    public function exists($essaiId) {
        $sql = " SELECT TVersion_essai_id AS ID FROM ao_technique_version WHERE TVersion_essai_id = $essaiId ";
        $jdb = jDb::getDbWidget();
         
         return (isset($jdb->fetchFirst($sql)->ID)) ? true : false;
    }

}